package javase.module2.task05;

public enum DirectionEnum implements DirectionInterface {
    // 2.声明本类类型的引用指向本类类型的对象
    // 匿名内部类的语法格式：接口/父类类型  引用变量名 = new 接口/父类类型() {方法重写}
    UP("向上"){
        @Override
        public void show() {
            System.out.println("贪吃蛇向上移动了一下");
        }
    },DOWN("向下") {
        @Override
        public void show() {
            System.out.println("贪吃蛇向下移动了一下");
        }
    },LEFT("向左") {
        @Override
        public void show() {
            System.out.println("贪吃蛇向左移动了一下");
        }
    },RIGHT("向右") {
        @Override
        public void show() {
            System.out.println("贪吃蛇向右移动了一下");
        }
    };

    private final String desc;

    // 1.私有化构造方法
    private DirectionEnum(String desc) {
        this.desc = desc;
    }

    public String getDesc() {
        return desc;
    }

    // show方法只重写一次，所有对象调用同一个
//    @Override
//    public void show() {
//        System.out.println("这是继承自接口的show方法");
//    }
}
